Restoring program information for clips of broadcast programs shared online

ABSTRACT

To restore context information about a clip that was sampled from a broadcast program, the clip is identified by matching a digital fingerprint of the clip against a database of known digital fingerprints taken from broadcast programs. If the clip can be identified, it is then associated with information about the matching broadcast program. The loss of context data about the clip obtained from a broadcast program is thus remedied, enabling media content available online to be more useable for a variety of purposes, such as media searching, automatic broadcast attribution, and targeting advertisements.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.60/972,637, filed Sep. 14, 2007, which is incorporated by reference inits entirety.

BACKGROUND

This invention relates generally to online sharing of media content, andin particular to restoring the program information that is typicallylost when users sample clips from broadcast programs and then sharethose clips online. The invention is also related to various uses of therestored program information, such as media searching, automaticbroadcast attribution, and targeting advertisements.

The Internet has seen an explosive growth of user-generated content(UGC), which is now available online from a vast number of communitysharing websites and other online sharing systems. Many websites caterexclusively or almost exclusively to receiving UGC from users and thenoffering that content to other users. While some of this UGC is createdby the users who upload the content, a significant, if not a majority,of the content is obtained from users who have sampled (or “clipped”)the content from a broadcast program and then uploaded the clip. Thisleads to a number of problems that are inherent in the distribution ofclips that have been obtained from broadcast programs.

One issue is that the content of broadcast programs is largely protectedby intellectual property rights, such as copyrights. The copying andredistribution of this protected content requires the permission of therights holders, who are generally not amenable to the unrestrictedsharing by others of the protected content, via UGC sharing websites orany other online means. Accordingly, it is difficult to enable onlinesharing of clips obtained from broadcast programs without running afoulof the intellectual property laws.

Another problem that arises with clips obtained from broadcast programsresults from the process by which the clips are obtained and thenshared. When a broadcast program is initially broadcast to subscribers,the program is broadcast in its intended context. This context mayinclude a particular time when the program is broadcast and a particularchannel in which the program is broadcast. The context of a broadcastprogram may be maintained as program information that is storedseparately in a program guide, such as an electronic program guide(EPG). A problem occurs when a user samples or digitizes a broadcastprogram, since the context information about the program is typicallylost. This is because the subsequent sharing of the program isdisassociated from the broadcast program's original context, forexample, because it is no longer played in the original broadcastcontext. In particular, the content is no longer played at the time inwhich the program was scheduled to be played, in the channel orfrequency on which it was originally contained, and possibly withoutother identifying context information associated with the originalbroadcast signal.

Moreover, broadcast programs often include embedded data to identify theprogram and/or other information about the program. In the case of atelevision program, for example, this data may be embedded in the VBI inthe signal. The digitization or sampling process in which a user obtainsa video clip from the original television broadcast typically stripsthis embedded data. The media content of the resulting clip is thereforeno longer paired with the information about the broadcast program fromwhich the video clip was obtained. When uploaded to a UGC website orother sharing system, the clip would thus lack identifying informationabout the broadcast program from which the clip was obtained.

The loss of program information for clips obtained from broadcastprograms is unfortunate, since that information could be helpful in avariety of applications, including searching for the content on a UGCwebsite by potential viewers and/or owners of the content, as well aspairing advertisements and other information about the content by anoperator of the website or other source of the content. Users sometimesprovide this information manually, but this is inherently unreliable andincomplete. What are needed, therefore, are methods and techniques foraddressing the deficiencies that may arise when clips obtained frombroadcast programs are shared online.

SUMMARY

Embodiments of the invention restore the program information that may belost when an item of media content, or clip, has been sampled from abroadcast program and then shared online. To restore the programinformation for a clip being shared on an online sharing system, theclip may first be identified. This identification may be performed, forexample, by matching a digital fingerprint of the clip against adatabase of known digital fingerprints taken from a plurality ofbroadcast programs. If the clip's fingerprint matches a knownfingerprint, the broadcast program from which the clip was sampled hasbeen determined. The program information for the broadcast program thatmatched the clip may then be obtained from a database of programinformation, such as an electronic program guide. Once the programinformation for the matching broadcast program is obtained, theinformation is then associated with the clip to restore what had beenlost when the clip was obtained from the original broadcast program. Inparticular, the loss of context about a clip obtained from a broadcastprogram can be remedied, thereby making the clips available on onlinesharing system more useable for a variety of purposes. The restoredprogram information may be used to improve, for example searching forcontent, automatic broadcast attribution, and targeting advertisements.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of a methodology for restoring program informationfor a sampled clip, in accordance with an embodiment of the invention.

FIG. 2 is a network diagram of a system for restoring programinformation for a sampled clip, in accordance with an embodiment of theinvention.

FIGS. 3A and 3B are interaction diagrams of a process for restoringprogram information for a sampled clip, in accordance with an embodimentof the invention.

FIG. 4 is a system diagram of a centralized content portal allowing asearch for clipped content across a plurality of sharing systems, inaccordance with an embodiment of the invention.

The figures depict various embodiments of the present invention forpurposes of illustration only. One skilled in the art will readilyrecognize from the following discussion that alternative embodiments ofthe structures and methods illustrated herein may be employed withoutdeparting from the principles of the invention described herein.

DETAILED DESCRIPTION

FIG. 1 illustrates an overview of a general methodology for restoringprogram information lost when a clip is sampled from a broadcast programand then uploaded for online sharing. In one stage of the methodology, afingerprinting system creates 102 a database of digital fingerprints fora number of different broadcast programs. The resulting fingerprintdatabase provides a set of reference fingerprints that can be used toidentify an unknown clip that may be contained in one of the broadcastprograms. In another stage, which may occur before, after, or inparallel with the fingerprinting discussed above, users may individuallysample 104 clips or other content from one or more of the broadcastprograms. The users may then upload the sampled clips to one or moreother clip sharing systems, such as a user-generated content (UGC)sharing website. In so doing, the users have distributed content from abroadcast program outside of the original broadcast context of theprogram.

For a number of reasons, it may be desirable to restore for a clip theprogram information that was lost when the clip was uploaded to thesharing system. To achieve this, a matching system uses the database ofreference fingerprints to identify 106 the broadcast program from whichan uploaded clip was obtained, and the corresponding program informationfor the program is then obtained. With the program information matchedto clip, the clip sharing system may then associate 108 this programinformation with the clip. In this way, the clip sampled from anoriginal broadcast program and shared online can retain its programinformation, even outside the context of the original broadcast.

Embodiments of the methodology illustrated in FIG. 1 may be performed bythe system shown in FIG. 2, although many variants of this system arepossible in other embodiments. Any of the elements illustrated in FIG. 2may be implemented in a single combined system, or by any number ofdistributed systems working to perform the functionalities describedherein.

As shown in FIG. 2, a broadcaster 200 sends a transmission signal thatcomprises a series of broadcast programs. Although only a singlebroadcaster 200 is shown in this figure, in a practical embodiment aplurality of broadcasters 200 would simultaneously transmit broadcastprograms, each of which could be tuned to by a suitable receiver for thebroadcast medium. The broadcaster 200 may transmit any kind of mediacontent, such as a television program, a radio program, a streamingInternet program, or any other item of media content that can bedelivered to one or more other users. As used herein, a broadcastprogram may refer to an entire broadcast program or any portion of abroadcast program, including any advertisements that may be containedtherein. The broadcast program may comprise audio and/or video content,for example a television program, a radio program, or a streaming mediabroadcast, without limitation. Alternatively, the broadcast program mayoriginate from any other source capable of outputting media content to anumber of destinations, and it is not limited to content that isdelivered by any traditional delivery mechanism. For example, atelevision broadcast need not be delivered by radio frequency, cable,satellite, or any other particular means.

One or more user systems 202 include a receiver for receiving abroadcast signal from the broadcaster 200 and, if necessary,demodulating and/or decoding the signal to obtain the broadcast programcontained therein. The user systems 202 also include hardware and/orsoftware for sampling the broadcast program to obtain a clip of all orpart of a particular program. To allow communication over a computernetwork 214, such as the Internet, the user systems 202 further includea network interface. In this way, a user system 202 may obtain abroadcast program, generate a clip from the broadcast program, and thenupload the clip via the network 214 to a remote location.

It can be appreciated that a user system 202 may comprise any number ofsystems and devices, and combinations thereof, to perform thesefunctionalities. For example, a user system 202 may comprise a cable settop box that decodes a cable signal to provide a video signal to apersonal computer, which contains software for extracting a digitalvideo clip from the video signal. That personal computer can then beused to log into the Internet and upload the video clip to a UGC sharingwebsite. In another example, a user system 202 may comprise a singledevice, such as a cell phone, that has a radio receiver for receiving aradio broadcast, software for saving a digitized portion (or clip) ofthe radio broadcast, and software for uploading the radio clip to auser's online blog. Many other examples are possible within the scope ofembodiments of the invention.

The system further includes one or more clip sharing systems 210 whichare configured to communicate with one or more user systems 202 toreceive the clips therefrom. The clip sharing systems 210 may compriseany system that allows at least one user to upload a clip and thenallows other users to download the uploaded clips. In one embodiment, aclip sharing system is a UGC sharing website. Examples of UGC websitesinclude websites that allow user to share their video clips with othersby uploading the clips, where other users can search for and download orview the clips from that website. In another embodiment, the clipsharing system 210 comprises a file sharing system, such as a fileserver that allows users to upload and download clips, or a peer-to-peernetwork that allows sharing of files among a plurality of users (e.g.,where the clip sharing system 210 is implemented at least in part on theuser systems 202 themselves). In yet another embodiment, the clipsharing system 210 may comprise a particular user's own personalwebsite, a blog, or a personalized page in a social network, or acollection thereof for each of a number of users. In this example, asingle user may upload clips, and a plurality of others with access tothe content may view or download the clips. In the overall system, oneor more clip sharing systems 210 may exist, and they be of the same orof different types.

Like the user systems 202, a fingerprinting system also includes areceiver for receiving a broadcast signal from the broadcaster 200 and,if necessary, demodulating and/or decoding the signal to obtain thebroadcast program contained therein. The fingerprint system 204 furtherincludes hardware and/or software for generating a digital fingerprintthat is characteristic of a portion of a broadcast program. Thefingerprint system 204 may use any suitable fingerprinting technique.Suitable techniques for generating a digital fingerprint that ischaracteristic of an item of media content include, without limitation,those disclosed in U.S. Pat. No. 7,421,376, issued Sep. 2, 2008, and inU.S. patent application Ser. No. 11/219,385, filed Sep. 1, 2005, each ofwhich is incorporated by reference herein.

The digital fingerprints generated by the fingerprint system 204 arestored in a fingerprint database 206. The resulting fingerprint database206 provides a reference set of digital fingerprints for a set ofbroadcast programs, which may then be used to identify unknown mediacontent. Accordingly, the more broadcast programs that are representedby fingerprints stored in the fingerprint database 206, the morebroadcast programs that can be matched using the fingerprint database206. In a practical embodiment, a plurality of fingerprinting systems204 may exist, for example, to handle multiple parallel broadcastsand/or broadcasts that are only available in different physicallocations (as in the case of radio). Likewise, the fingerprint database206 may comprise a single database or multiple databases, and may belocal to the fingerprint system 204 or remote from it.

Because the fingerprint system 204 creates the fingerprints from thebroadcast program in its original context, the fingerprint system 204may know the identity of the broadcast program from which eachfingerprint has been generated (or, at least, sufficient information todetermine the identity of the broadcast program, such as the channel andtime of the broadcast). The fingerprints may be associated with theprogram information for a particular broadcast program by storing theprogram information with each fingerprint in the fingerprint database206. However, this approach may be less efficient where there aremultiple fingerprints for each broadcast program and the programinformation takes up more memory than a simple identifier.Alternatively, the fingerprints can be associated with the broadcastprogram itself, for example, using an index value that references thebroadcast program. This allows the program information associated with afingerprint to be determined at a later time by querying the programdatabase 212 for the program information for the broadcast programassociated with the fingerprint.

The program database 212 stores program information for each of aplurality of broadcast programs. For any particular broadcast program,the program information includes information about the broadcastprogram, which typically depends on the type of broadcast. For atelevision or radio broadcast, for example, the program information mayinclude one or more: a program title, a channel on which the program wasbroadcast, a broadcast start and/or stop time, information about thecontent of the program (e.g., genre, plot, actors, etc.), and any otherinformation about the broadcast program that may be relevant. In oneembodiment, the program database 212 comprises an electronic programguide (EPG). The program database 212 may be remote and accessible viathe network 214, possibly operated by another entity, or it may bestored locally by the fingerprint system 204 or in another system thatmay desire access to the database 212.

A matching system 208 is coupled to the network 214 for communicatingwith the systems described above. As described in more detail below, thematching system 208 includes hardware and/or software for identifying aclip on a clip sharing system 210 by comparing a fingerprint for theclip with the reference fingerprints in the fingerprint database 206,obtaining the corresponding program information for the identified clip,and providing the program information to the clip sharing system 210 sothat the lost program information may be restored and used in connectionwith the clip.

FIGS. 3A and 3B illustrate a process for using the system of FIG. 2 torestore the program information associated with a clip, in accordancewith one embodiment of the invention. In a first series of steps, whichmay correspond to stage 102 of FIG. 1, this process builds a database206 of reference fingerprints that can be used later for identificationof an unknown clip. In this process, a broadcaster 200 transmits 302 abroadcast program, which is tuned to and received the fingerprint system204. The fingerprint system 204 then computers 304 one or more digitalfingerprints for the broadcast program, or a portion thereof, using anyof a variety of known techniques. The fingerprint system 204 stores thefingerprints in the fingerprint database 206. As described above, thisprocess repeats over time for a plurality of broadcast programs, andpossible from a plurality of broadcasters 200 and/or using a pluralityof fingerprint systems 204.

In another series of steps, which may correspond to stage 104 of FIG. 1,the process involves the clipping and sharing of media content by anumber of users. The broadcaster 200 transmits 308 broadcast programsthat can be received by one or more user systems 202 as well as by thefingerprint system 204. This transmission may be the same broadcast asthat received by the fingerprint system 204, or it may be a differentone and through different broadcast channels. A particular user may usethe user system to sample 310 one or more of the broadcast programs tocreated one or more clips that contain all or a portion of the programs.This may be done by sampling, recording, digitizing, or any othermechanism by which a user can obtain a digital version of any portion ofa broadcast. Optionally, the user system 202 may be used to edit theclips. A user may make clips for their own purposes, or the user mayupload 312 the clips to a clip sharing system 210 using the user system202. The uploading 312 may comprise logging into a content sharingwebsite or other file sharing system and transmitting the clip, or, inthe case of a peer-to-peer network, simply making the clip available fordownloading by other user systems 202.

Once clips have been uploaded to a clip sharing system 210, other userssystems may be used to search for the uploaded clips and view and/ordownload them. But, as explained above, these uploaded clips willtypically lack some or all of the useful context about the broadcastprogram from which the clips were obtained. Accordingly, variousembodiments of the invention will attempt to restore the lost programinformation for the clips. The series of steps that perform thisfunction, illustrated largely in FIG. 3B, may be triggered on any of avariety of events as desired to achieve particular design objectives forthe system. For example, the restoration process may be performed whenany new clip that is uploaded to the clip sharing system, when any clipis requested for viewing or download by a user system 202, orperiodically (e.g., nightly or other low-peak time period) for any clipswhose program information has not yet been restored.

To restore the lost program information for a clip, the clip sharingsystem 210 sends a request 314 to the matching system 208 for theprogram information associated with the clip. This request may include acopy of the clip itself, or it may simply include a reference or otheridentifier for the clip. In the case of a UGC sharing website, forexample, the system 210 may pass a URL for viewing the clip to thematching system 208. In one embodiment, the matching system 208 isimplemented within the clip sharing system 210, in which case thematching system 208 may already have access to the clips. Accordingly,the matching system 208 may be operated by the same entity and inconjunction with the clip sharing system 210, or it may be operated by athird party and remote from the clip sharing system 210.

To determine the program information to be associated with a particularclip, the matching system 208 determines the identity of the clip. To dothis, the matching system 208 sends a request 316 to the fingerprintsystem 204 for the identity of the broadcast program that contains theclip. This request may include a copy of the clip itself, or it maysimply include a reference or other identifier for the clip. Thefingerprint system 204 computes 318 a fingerprint for the clip using anysuitable fingerprinting algorithm, such as those described above, butgenerally the same algorithm should be used for the clip as was used togenerate the fingerprints in the fingerprint database 206. The matchingsystem 208 then queries 320 the fingerprint database 206 using thefingerprint for the clip to find a match between the clip and abroadcast program represented in the database 206. Alternatively, thematching system 208 generates the fingerprint for the clip and/orqueries the fingerprint database 206 to determine the identity of theclip. Any of a variety of matching techniques may be used, asappropriate, such as those described in U.S. patent application Ser. No.10/132,091, filed Apr. 24, 2002, or U.S. patent application Ser. No.10/830,962, filed Apr. 22, 2004, each of which is incorporated byreference herein. The query returns 322 in the identity of the programbeing determined, which the fingerprint system 204 sends 324 to thematching system 208.

If a match is found between the fingerprint for the clip and afingerprint in the fingerprint database 206, the clip is then identifiedas being obtained from the broadcast program from which the matchingfingerprint in the fingerprint database 206 was associated. Once theidentity of the source broadcast program is known for a particular clip,the clip can be associated with the program information that is knownfor the broadcast program, thereby giving a richer set of informationabout the clip. In one embodiment, the matching system 208 queries 326the program database 212 with an identifier for the broadcast program,and the program database 212 returns 328 the program information forthat program. The matching system then forwards 330 the programinformation to the clip sharing system 210, which restores 332 theprogram information with the clip. Alternatively, the matching system208 may just send the identity of eth broadcast program that containsthe clip, and the clip sharing system 210 then obtains the correspondingprogram information, for example, from the program database 206. Theclip sharing system 210 may associate the program information with theclip by storing the program information or a reference thereto on astorage medium in a memory record that is associated with the clip.

In this way, the clip is reconnected the context data about the clipthat was lost when the clip was sampled and uploaded by a user orotherwise shared online. This matching and reconnecting may be performedfor many or all of the clips available through the clip sharing system210, and the process may be performed for several different clip sharingsystems 210. With the additional program information providing usefulcontext about the clips known, a number of applications for using theclips are enabled.

FIG. 4 illustrates a system configured to apply embodiments of theprocess described above to enable centralized searching of multiple clipsharing systems 210. In this embodiment, a content portal 402 enables auser system 202 to search across a number of online sharing systems 210to locate clips available on any of these sharing systems 210. Thecontent portal 402 searches the clip sharing systems 210 for a pluralityof clips available thereon. The content portal 402 may store a referenceto the clip (e.g., the URL at which it can be accessed) and the clipssharing system 210 that is offering the clip. Once clips on the varioussharing systems 210 are located, the content portal 402 performs, byitself or in concert with other systems, embodiments of the processdescribed above to identify the clips and then obtain programinformation for them. The content portal 402 then stores the programinformation in association with the clips. Once the content portal 402has accumulated information for multiple clips on the clip sharingsystems 210 and program information associated with those clips, a usersystem 202 can search this information on the content portal 402. Inparticular, a user system 202 may search the content portal 402 usingsearch criteria based on the program information (e.g., to return a listof all known clips having a search term in the title of the broadcastprogram, or all known clips from a particular channel).

In one embodiment, the content portal 402 comprises a website thatreferences clips across multiple UGC sites. The content portal 402performs the matching and association of the program information withvarious clips available on other UGC websites, as described above. Thecontent portal 402 further includes a search interface that searchesacross and redirects users to the clips located at any of the multipleUGC websites. The search experience is improved by the use of therestored program information and by enabling search and retrieval acrossmultiple UGC websites.

This kind of central website may also facilitate content owners inlocating their content available on the Internet, which may allow foreasier policing of violations of their intellectual property rights. Theprogram information that is associated with these clips, in variousembodiments of the invention, helps the content owners locate theircontent that is available for public download from the one or morewebsites. An ISP may also use an embodiment of the invention proactivelyto locate protected content so that it can be filtered before it isallowed to be shared, thus enabling the ISP to comply with applicabledigital rights laws.

In another application, the program information that has been associatedback with the clips can be used for improved searching of content on aparticular online clip sharing system 210, such as a UGC sharingwebsite. For example, if a user is searching the UGC website for aparticular show, the user can enter the title of the show to obtain amore reliable listing of the available clips on the website. Without theprogram information attached to the clips, the resulting search mayeasily be incomplete, as the uploading users might have had to manuallyenter the show information. In such a process, the uploading user maychoose not to add the show title information or may do so incorrectly.Embodiments of the invention thus enable more reliable and efficientsearching of a UGC website.

In one embodiment, a clip on a clip sharing system 210 may include metadata about the clip (such as keywords or specific fields of data)provided manually, for example, by the user who uploaded the clip and/orby other users who have reviewed it. This meta data may be considereduntrusted because it may be incomplete, inaccurate, or both. Once theprogram information has been obtained for the clip, in accordance withembodiments of the invention described herein, this untrusted meta datamay be verified. In particular, if a portion of the meta data matchesthe program information, the other portions of it may be considered moretrustworthy. Conversely, if none of the meta data matches the programinformation, it may be considered untrustworthy. The measure oftrustworthiness may be presented to a user and/or used by the system210, for example, in a search algorithm (e.g., to give the lesstrustworthy terms less importance in the results of a search).

In another application, the program information associated with aparticular clip may be used for better targeting of advertisementsand/or pairing of other information to be presented to a user who isdownloading or viewing a clip from the clip sharing system 210. Theimproved targeting may results from the fact that the sharing system 210has a greatly enhanced set of information about at least some of theclips available from the sharing system 210. In particular, thisenhanced set of information may describe the original broadcast program,which is the type of information that advertisers often use to targettheir advertisements. With previous sharing systems, such as videosharing websites, advertisers may have been reluctant to spendadvertising revenue because the meta data associated with the uploadedclips may be unreliable and susceptible to manipulation. Withembodiments of the invention, however, the information known about theclips is reliable, making it more likely that an advertiser will spendmoney in such a forum.

Moreover, these advertisements can be presented in exchange for thecopyright holder's permission to share the content in the clips. Sincebetter targeted advertisements is enabled, the advertising is morevaluable and the copyright holders are thus more likely to permitsharing of at least some of the content. In situations where the rightsholder does not wish to share the content, or wished to apply certainlimits to the sharing, the enhanced information about the broadcastsfrom which the clips were obtained allows the rights holder to policethe content on one or more clip sharing systems 210 more easily and moreaccurately.

In another application, an attribution message may be automaticallygenerated and presented along with a clip from the clip sharing system210. As used herein, an attribution message is any informational messagethat communication all or a portion of the program informationassociated with a clip. The attribution message may comprise a textualand/or graphical content presented next to or overlaid over the clipbeing provided. Alternatively, the attribution message may comprise andaudio or video stream that is also presented with the clip tocommunicate program information about it to a user.

In one example, where the clip is from a television broadcast, thebroadcast information may include data obtained from an EPG. The videoclip may then be displayed with an overlay graphic that contains theattribution message, comprising the restored program information fromthe EPG. This enables the audience of the clip to benefit frominformation about when the program typically airs and/or on whichbroadcaster or broadcast channel provides the full broadcast program.The content owner benefits from this attribution and promotion of thebroadcast program from which the clip was taken, and the content ownermay even allow the clip sharing system 210 to share a protected clipbecause of this benefit.

The foregoing description of the embodiments of the invention has beenpresented for the purpose of illustration; it is not intended to beexhaustive or to limit the invention to the precise forms disclosed.Persons skilled in the relevant art can appreciate that manymodifications and variations are possible in light of the abovedisclosure.

Some portions of this description describe the embodiments of theinvention in terms of algorithms and symbolic representations ofoperations on information. These algorithmic descriptions andrepresentations are commonly used by those skilled in the dataprocessing arts to convey the substance of their work effectively toothers skilled in the art. These operations, while describedfunctionally, computationally, or logically, are understood to beimplemented by computer programs or equivalent electrical circuits,microcode, or the like. Furthermore, it has also proven convenient attimes, to refer to these arrangements of operations as modules, withoutloss of generality. The described operations and their associatedmodules may be embodied in software, firmware, hardware, or anycombinations thereof.

Any of the steps, operations, or processes described herein may beperformed or implemented with one or more hardware or software modules,alone or in combination with other devices. In one embodiment, asoftware module is implemented with a computer program productcomprising a computer-readable medium containing computer program code,which can be executed by a computer processor for performing any or allof the steps, operations, or processes described.

Embodiments of the invention may also relate to an apparatus forperforming the operations herein. This apparatus may be speciallyconstructed for the required purposes, and/or it may comprise ageneral-purpose computing device selectively activated or reconfiguredby a computer program stored in the computer. Such a computer programmay be stored in a tangible computer readable storage medium or any typeof media suitable for storing electronic instructions, and coupled to acomputer system bus. Furthermore, any computing systems referred to inthe specification may include a single processor or may be architecturesemploying multiple processor designs for increased computing capability.

Embodiments of the invention may also relate to a computer data signalembodied in a carrier wave, where the computer data signal includes anyembodiment of a computer program product or other data combinationdescribed herein. The computer data signal is a product that ispresented in a tangible medium or carrier wave and modulated orotherwise encoded in the carrier wave, which is tangible, andtransmitted according to any suitable transmission method.

Finally, the language used in the specification has been principallyselected for readability and instructional purposes, and it may not havebeen selected to delineate or circumscribe the inventive subject matter.It is therefore intended that the scope of the invention be limited notby this detailed description, but rather by any claims that issue on anapplication based hereon. Accordingly, the disclosure of the embodimentsof the invention is intended to be illustrative, but not limiting, ofthe scope of the invention, which is set forth in the following claims.

1-22. (canceled)
 23. A method comprising: identifying, by a computer, aclip available on an online clip sharing system, the clip containingmetadata about the clip and at least a portion of a broadcast program;obtaining, by the computer, a digital fingerprint for the clip;matching, by the computer, the digital fingerprint of the clip against aplurality of reference fingerprints to identify the broadcast program inthe clip, the reference fingerprints corresponding to a plurality ofknown broadcast programs; obtaining, by the computer, programinformation associated with the identified broadcast program based atleast in part on the matching of the digital fingerprint of the clipagainst the plurality of reference fingerprints; associating, by thecomputer, the program information with the clip; storing, by thecomputer, the program information in association with the clip in anon-transitory computer-readable storage medium; comparing, by thecomputer, a portion of the metadata about the clip with the programinformation; assigning, by the computer, the metadata as trustworthy ifthe portion of the metadata about the clip matches the programinformation; and assigning, by the computer, the metadata asuntrustworthy if the portion of the metadata about the clip does notmatch the program information.
 24. The method of claim 23, wherein themetadata comprises keywords.
 25. The method of claim 23, wherein themetadata comprises specific fields of data.
 26. The method of claim 23,further comprising obtaining, by the computer, the metadata from theonline clip sharing system, the metadata received by the online clipsharing system from a user who uploaded the clip to the online clipsharing system.
 27. The method of claim 23, further comprisingobtaining, by the computer, the metadata from the online clip sharingsystem, the metadata received by the online clip sharing system fromusers who have reviewed the clip.
 28. The method of claim 23, furthercomprising transmitting, by the computer to a user for display, ameasure of trustworthiness comprising whether the metadata was assignedas trustworthy or untrustworthy.
 29. The method of claim 23, furthercomprising transmitting, by the computer to a system for use in a searchalgorithm, a measure of trustworthiness comprising whether the metadatawas assigned as trustworthy or untrustworthy.
 30. A computing devicecomprising: a processor; a storage medium for tangibly storing thereonprogram logic for execution by the processor, the stored program logiccomprising: identifying logic executed by the processor for identifyinga clip available on an online clip sharing system, the clip containingmetadata about the clip and at least a portion of a broadcast program;fingerprint obtaining logic executed by the processor for obtaining adigital fingerprint for the clip; matching logic executed by theprocessor for matching the digital fingerprint of the clip against aplurality of reference fingerprints to identify the broadcast program inthe clip, the reference fingerprints corresponding to a plurality ofknown broadcast programs; program information obtaining logic executedby the processor for obtaining program information associated with theidentified broadcast program based at least in part on the matching ofthe digital fingerprint of the clip against the plurality of referencefingerprints; program information and clip associating logic executed bythe processor for associating the program information with the clip;storing logic executed by the processor for storing the programinformation in association with the clip in a non-transitorycomputer-readable storage medium; comparing logic executed by theprocessor for comparing a portion of the metadata about the clip withthe program information; trustworthy assigning logic executed by theprocessor for assigning the metadata as trustworthy if the portion ofthe metadata about the clip matches the program information; anduntrustworthy assigning logic executed by the processor for assigningthe metadata as untrustworthy if the portion of the metadata about theclip does not match the program information.
 31. The computing device ofclaim 30, wherein the metadata comprises keywords.
 32. The computingdevice of claim 30, wherein the metadata comprises specific fields ofdata.
 33. The computing device of claim 30, further comprising metadataobtaining logic executed by the processor for obtaining the metadatafrom the online clip sharing system, the metadata received by the onlineclip sharing system from a user who uploaded the clip to the online clipsharing system.
 34. The computing device of claim 30, further comprisingmetadata obtaining logic executed by the processor for obtaining themetadata from the online clip sharing system, the metadata received bythe online clip sharing system from users who have reviewed the clip.35. The computing device of claim 30, further comprising trustworthinesstransmitting logic executed by the processor for transmitting, to a userfor display, a measure of trustworthiness comprising whether themetadata was assigned as trustworthy or untrustworthy.
 36. The computingdevice of claim 30, further comprising trustworthiness transmittinglogic executed by the processor for transmitting, to a system for use ina search algorithm, a measure of trustworthiness comprising whether themetadata was assigned as trustworthy or untrustworthy.
 37. Anon-transitory computer-readable storage medium tangibly storingcomputer program instructions capable of being executed by a computerprocessor, the computer program instructions defining the steps of:identifying, by the processor, a clip available on an online clipsharing system, the clip containing metadata about the clip and at leasta portion of a broadcast program; obtaining, by the processor, a digitalfingerprint for the clip; matching, by the processor, the digitalfingerprint of the clip against a plurality of reference fingerprints toidentify the broadcast program in the clip, the reference fingerprintscorresponding to a plurality of known broadcast programs; obtaining, bythe processor, program information associated with the identifiedbroadcast program based at least in part on the matching of the digitalfingerprint of the clip against the plurality of reference fingerprints;associating, by the processor, the program information with the clip;storing, by the processor, the program information in association withthe clip in a non-transitory computer-readable storage medium;comparing, by the processor, a portion of the metadata about the clipwith the program information; assigning, by the processor, the metadataas trustworthy if the portion of the metadata about the clip matches theprogram information; and assigning, by the processor, the metadata asuntrustworthy if the portion of the metadata about the clip does notmatch the program information.
 38. The non-transitory computer-readablestorage medium of claim 37, wherein the metadata comprises keywords. 39.The non-transitory computer-readable storage medium of claim 37, whereinthe metadata comprises specific fields of data.
 40. The non-transitorycomputer-readable storage medium of claim 37, further comprisingobtaining, by the processor, the metadata from the online clip sharingsystem, the metadata received by the online clip sharing system from auser who uploaded the clip to the online clip sharing system.
 41. Thenon-transitory computer-readable storage medium of claim 37, furthercomprising transmitting, by the processor to a user for display, ameasure of trustworthiness comprising whether the metadata was assignedas trustworthy or untrustworthy.
 42. The non-transitorycomputer-readable storage medium of claim 37, further comprisingtransmitting, by the processor to a system for use in a searchalgorithm, a measure of trustworthiness comprising whether the metadatawas assigned as trustworthy or untrustworthy.